package com.luntan.school.dao;

import com.luntan.school.model.User;

import java.util.List;

public interface UserDao {
    /**
     * 用户登录
     * @param account
     * @param password
     * @return
     */
    User login(String account, String password);

    /**
     * 增加用户
     * @param user
     * @return boolean 是否创建成功
     */
    boolean addUser(User user);

    /**
     * 判断用户是否存在
     * @param key
     * @param value （只能是：account:账户 nickname:昵称  mobile:手机号码 email:电子邮件）
     * @return
     */
    boolean isUserExist(String key, String value);

    /**
     * 获取所有用户
     *
     * @return
     */
    List<User> getAllUsers();

    /**
     * 禁用用户
     * @param userId
     * @return forbidden true:禁用,false:取消禁用
     */
    void forbiddenUser(int userId,boolean forbidden);

    /**
     * 修改用户密码
     *
     * @param account
     * @param password
     */
    void upDatePassword(String account, String password);

    /**
     * 更新用户信息（除密码）
     *
     * @param user
     */
    void updateUserInfo(User user);
}
